Methods and devices for managing video sessions in a network based on network performance information

ABSTRACT

Aspects of the subject disclosure may include, for example, receiving network information for a group of video sessions. Embodiments include calculating an overall video traffic metric for the group of video sessions for each cell based on the network information and include determining a first overall video traffic metric of a first cell is above a first predetermined threshold and a second overall video traffic metric of a second cell is below the first predetermined threshold. Also, embodiments include generating a graphical map that indicates the overall video traffic metric for each cell in the cellular network and sending the graphical map to a mobile device in the first cell showing first overall video traffic metric and the second overall video traffic metric relative to the first predetermined threshold. Other embodiments are disclosed.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/284,037 filed Oct. 3, 2016. The contents of the foregoing is herebyincorporated by reference into this application as if set forth hereinin full.

FIELD OF THE DISCLOSURE

The subject disclosure relates to a methods and devices for managingvideo sessions in a network based on network performance information.

BACKGROUND

Modern communication networks, including the Internet, cellular networksand edge wireless networks (e.g. WiFi networks), allow users to conductvideo sessions on mobile devices such as smartphones and tabletcomputers. Video sessions can include streaming video content as well asconducting video conferencing on mobile devices.

BRIEF DESCRIPTION OF THE DRAWINGS

Reference will now be made to the accompanying drawings, which are notnecessarily drawn to scale, and wherein:

FIGS. 1-5 depict illustrative embodiments for managing video sessions ina network based on network performance information;

FIG. 6 depicts an illustrative embodiment of a method used in portionsof the system described in FIGS. 1-5;

FIGS. 7-8 depict illustrative embodiments of communication systems thatprovide media services such as delivering and managing video content forvideo sessions conducted on mobile devices;

FIG. 9 depicts an illustrative embodiment of a web portal forinteracting with the communication systems of FIGS. 1-5, and FIGS. 7-8];

FIG. 10 depicts an illustrative embodiment of a communication device;and

FIG. 11 is a diagrammatic representation of a machine in the form of acomputer system within which a set of instructions, when executed, maycause the machine to perform any one or more of the methods describedherein.

DETAILED DESCRIPTION

The subject disclosure describes, among other things, illustrativeembodiments for managing video sessions in a network based on networkinformation. Embodiments can include receiving aggregate networkinformation for communication sessions for each cell of a multiple ofcells in a cellular network. The communication sessions include a groupof video sessions and the aggregate network information comprisesnetwork information from each of a multiple of data sources. Furtherembodiments include calculating an overall video traffic metric for thegroup of video sessions for each cell based on the aggregate networkinformation. Additional embodiments include determining a first overallvideo traffic metric of a first group of video sessions controlled by afirst base station of a first cell is above a first predeterminedthreshold and a second overall video traffic metric of a second group ofvideo sessions controlled by a second base station of a second cell isbelow the first predetermined threshold. Also, embodiments includegenerating a graphical map of the cellular network that displays ageography of the cellular network and indicates the overall videotraffic metric for the group of video sessions for each cell in thecellular network. Further embodiments include sending the graphical mapto a mobile device conducting a video session in the first cell and anindication that the first overall video traffic metric associated withfirst cell is above the first predetermined threshold and the secondoverall video traffic metric associated with the second cell is belowthe first predetermined threshold. Other embodiments are described inthe subject disclosure.

One or more aspects of the subject disclosure include a device. Thedevice can include a processing system including a processor and amemory that stores executable instructions that, when executed by theprocessing system, facilitate performance of operations. Operations caninclude receiving aggregate network information for communicationsessions for each cell of a plurality of cells in a cellular network.The communication sessions include a group of video sessions and theaggregate network information comprises network information from each ofa multiple of data sources. Further operations can include calculatingan overall video traffic metric for the group of video sessions for eachcell based on the aggregate network information. Additional operationscan include generating a graphical map of the cellular network thatdisplays a geography of the cellular network and indicates the overallvideo traffic metric for the group of video sessions for each cell inthe cellular network within the geography. Also, operations can includedetermining a first overall video traffic metric of a first group ofvideo sessions controlled by a first base station of a first cell isabove a first predetermined threshold and a second overall video trafficmetric of a second group of video sessions controlled by a second basestation of a second cell is below the first predetermined threshold. Insome embodiments a threshold for a metric can be dynamic instead ofpredetermined. In other embodiments, the threshold for a metric can berelative to another metric or parameter of a network. Further operationscan include sending the graphical map to a communication device and anindication that the first overall video traffic metric associated withfirst cell is above the first predetermined threshold and the secondoverall video traffic metric associated with the second cell is belowthe first predetermined threshold. Additional operations can includeperforming a handover of control of a first portion of the first groupof video sessions from the first base station to the second base stationresponsive to receiving a message from the communication device. In someembodiments handover of control of video sessions can come fromautomated network control (e.g. from a centralized network device) orfrom a base station request. The message provides an indication tochange control of the first portion of the first group of video sessionfrom the first base station to the second base station.

One or more aspects of the subject disclosure include a machine-readablestorage medium, comprising executable instructions that, when executedby a processing system including a processor, facilitate performance ofoperations. The operation can include receiving aggregate networkinformation for communication sessions for each cell of a plurality ofcells in a cellular network. The communication sessions include a groupof video sessions and the aggregate network information comprisesnetwork information from each of a plurality of data sources. Furtheroperations can include calculating an overall video traffic metric forthe group of video sessions for each cell based on the aggregate networkinformation. Additional operations can include determining a firstoverall video traffic metric of a first group of video sessionscontrolled by a first base station of a first cell is above a firstpredetermined threshold and a second overall video traffic metric of asecond group of video sessions controlled by a second base station of asecond cell is below the first predetermined threshold. Also, operationscan include receiving aggregate wireless network information for each ofa plurality of wireless networks. Further operations can includecalculating a wireless traffic metric for each of the plurality ofwireless networks. Additional operations can include identifying a firstwireless network of multiple wireless networks. The first wirelessnetwork has a first wireless traffic metric below a second predeterminedthreshold. Also, operations can include generating a graphical map ofthe cellular network that displays a geography of the cellular network,indicates the overall video traffic metric for the group of videosessions for each cell in the cellular network, displays a geography ofthe plurality of wireless networks, and indicates the wireless trafficmetric for each of the plurality of wireless networks. Furtheroperations can include sending the graphical map to a mobile deviceconducting a video session in the first cell and an indication that thefirst overall video traffic metric associated with first cell is abovethe first predetermined threshold, the second overall video trafficmetric associated with the second cell is below the first predeterminedthreshold, and the first wireless traffic metric is below the secondpredetermined threshold.

One or more aspects of the subject disclosure include a method. Themethod can include receiving, by a processing system including aprocessor, aggregate network information for communication sessions foreach cell of a plurality of cells in a cellular network. Thecommunication sessions include a group of video sessions and wherein theaggregate network information comprises network information from each ofa multiple of data sources. The method can further include calculating,by the processing system, an overall video traffic metric for the groupof video sessions for each cell based on the aggregate networkinformation. Additionally, the method can include determining, by theprocessing system, a first overall video traffic metric of a first groupof video sessions controlled by a first base station of a first cell isabove a first predetermined threshold and a second overall video trafficmetric of a second group of video sessions controlled by a second basestation of a second cell is below the first predetermined threshold.Also, the method can include generating, by the processing system, agraphical map of the cellular network that displays a geography of thecellular network and indicates the overall video traffic metric for thegroup of video sessions for each cell in the cellular network. Further,the method can include sending, by the processing system, the graphicalmap to a mobile device conducting a video session in the first cell andan indication that the first overall video traffic metric associatedwith first cell is above the first predetermined threshold and thesecond overall video traffic metric associated with the second cell isbelow the first predetermined threshold.

FIG. 1 depicts an illustrative embodiment of managing video sessions ina network based on network information. In one or more embodiments, thesystem 100 includes a network server generating a graphical map 105 of acellular network. The nonlimiting embodiment shown in FIG. 1, thegraphical map 105 spans from San Francisco and San Jose. Portions of thegraphical map 105 can show clusters of cells 110, 120, 130, 140 of thecellular network by using different pattern squares. Each square patterncan provide a range of values for an overall video traffic metric forthe cell. Squares with certain patterns indicate cells with morecongestion according to the overall video traffic metric than squareswith other patterns. In other embodiments, the graphical map can bepresented using Nanocube technology (see www.nanocube.net). Nanocubetechnology allows for fast visualization of large spatiotemporaldatasets. Further, Nanocube technology processes data with respect tospace, time, or data attributes, and presents the results in real-timeon a web browser over heatmaps, bar charts, histograms, etc.

In one or more embodiments, the graphical map 105 can be sent by thenetwork server to communication device of cellular network managementpersonnel (e.g. cellular network operator) identifying more congested(i.e. more overall video traffic according to the overall video trafficmetric) cells and less congested cells. The network operatorcommunication device can be any computing device including, but notlimited to, a desktop computer, laptop computer, tablet computer,smartphone, etc. The congestion of the cells may be due in part of videosessions conducted by mobile devices (e.g. smartphone, tablet computers,etc.). Video sessions can include a mobile device streaming videocontent or conducting a video conference. Moreover, based on identifyingmore congested cells and less congested cells, a network operator canchange control of some mobile devices from a base station associatedwith a more congested cell to a base station associated with a lesscongested cell.

Examples of an overall video traffic metric for a cell can includenumber of communication sessions, number of video sessions, total data(MB), throughput (Kbps), transfer duration (sec), average video quality(Kbps), application or channel type (e.g. Hulu™, Netflix™, Youtube™,Skype™, etc.), operating system type (Android™, iOS™, etc.), rebufferingratio (%), startup delay (seconds), quality switching, and network type(e.g. 2G, 3G, LTE, etc.). Metrics can be calculated or otherwisedetermined from network information receives from different sources.Network (performance) information can include physical networkinformation of a cell including the signal strength of mobile devicesand base station of a cell as well as the interference subjected to thesignals in a cell. Signal strength and interference affect the number ofretransmissions of packets for communications sessions such as videosessions. Other network information can include application informationprovided by a different data source. For example, applicationinformation can indicate the type of application used in a communicationsession or video session such as Hulu™, Netflix™, Youtube™, Skype™, etc.Additional network information can be the operating system type ofmobile devices in a cell provided by a different data source. Othernetwork information can include Transmission Control Protocol (TCP) flowlevel information that can include the number of retransmissions ofpackets for communication sessions or video sessions. Further, metricssuch as throughput, total data, transfer duration, etc. are dependent onthe number of retransmissions of packets and affect the congestion ofcells.

In one or more embodiments, the system 100 can be configured to send thegraphical map 105 indicating the congestion of each cell according to aselected overall video traffic metric to be presented on a communicationdevice or mobile device. Further, the system 100 can be provisioned orhave default settings for different thresholds of congestions, eachthreshold having a different metric value. In addition, the networkserver of system 100 can assign a color, pattern, or any other visualindicator for each cell being above and/or below a threshold value ofthe overall video traffic metric. For example, graphical map 105 canindicate the congestion of cells 110-140 according to the number ofvideo sessions (i.e. overall video traffic metric). In a graphical map105, if the number of video sessions in a cell is detected or determinedto be 0-25 video sessions, then a square representing the cell in thegraphical map can be colored green. If the number of video sessions in acell is detected or determined to be 26-50 video sessions, the squarerepresenting the cell in the graphical map can be colored yellow.Further, if the number of video sessions is detected or determined to be51-75 video sessions, the square representing the cell in the graphicalmap can be colored orange. In addition, if the number of video sessionsis detected or determined to be between 76-100 video sessions, thesquare representing the cell in the graphical map can be colored red.

In one or more embodiments, the system 100 can include one or morenetwork servers and can send the graphical map 105 to a communicationdevice of a network operator to be presented on a display. Further, thenetwork server can provide an indication to the communication devicethat one cell is congested due to a high value of an overall videotraffic metric for the cell and another cell is less congested due tolower value of the overall video traffic metric for the other cell. Inaddition, the indication can include information that one or more mobiledevices in the one cell can be configured to connect to the other cellto relieve some congestion in the one cell. For example, the number ofvideo sessions in a first cell is 53 sessions and the number of videosessions for a second cell is 42 sessions. A predetermined threshold fora congestion for the overall video traffic metric (i.e. number of videosessions) can be 50 video sessions. Further, five mobile devices fromthe first cell can be provisioned to be connected to the second cell.

In one or more embodiments, a network operator can provide a messagethat instructs the network server to provision the connection of the oneor more mobile devices from the one cell to the other cell.Consequently, the network server can instruct a base station of the onecell to perform or cause to perform a handover of control of the one ormore mobile device to a base station of the other cell. For example, thenetwork operator, via their communication device, can send instructionsto the network server to have the base station of the first cell performor cause to perform a handover of control of the five mobile devices tothe base station of the second cell. When the handover of the fivemobile devices is complete, then the first cell has 48 video sessionsand the second cell has 47 video sessions, thereby each cell being belowa predetermined threshold of congestion of 50 video sessions.

In one or more embodiments, the network server can send the graphicalmap 105 to one of the mobile devices in a congested cell to be presentedon a display. Further, the network server can provide an indication tothe mobile device that it is connected to a congested cell (according toan overall video traffic metric) and provide an indication that themobile device can be connected to another, less congested cell. Forexample, the number of video sessions in a congested cell is 53 sessionsand the number of video sessions for a less congested cell is 42sessions. A predetermined threshold for congestion according to anoverall video traffic metric (i.e. number of video sessions) can be 50video sessions. Further, five mobile devices from the first cell can beprovisioned to be connected to the second cell. The network server cansend each of these five mobile devices the graphical map 105 and/or anindication that they are each connected to a congested cell but canconnect to a less congested cell to possibly improve the quality oftheir respective video sessions. In some embodiments, three of the fivemobile devices may connect to the less congested cell and send a messageto the network server to perform or cause to perform a handover ofcontrol of their respective mobile devices from the base station of thecongested cell to the base station of the less congested cell. Inaddition, the users of the two other mobile devices may decide not toconnect to the less congested cell because they have determined, byexamining the graphical map 105, that they are traveling away from theless congested cell.

In one or more embodiments, the system 100 can determine one cell iscongested due to a high value of an overall video traffic metric for thecell (e.g. above a predetermined threshold) and another cell is lesscongested due to lower value of the overall video traffic metric for theother cell (e.g. below a predetermined threshold). In addition, thenetwork server can determine that one or more mobile devices in the onecell can be provisioned to connect to the other cell to relieve somecongestion of the one cell. Responsive to this determination, thenetwork server can automatically perform or cause to perform a handoverof control of the one or more mobile devices from base station of theone cell to the base station of the other cell, thereby reducing thecongestion of the one cell. For example, the number of video sessions ina first cell can be 53 sessions and the number of video sessions for asecond cell is 42 sessions. A predetermined threshold for an overallvideo traffic metric (i.e. number of video sessions) can be 50 videosessions. Further, five mobile devices from the first cell can beprovisioned to be connected to the second cell. The network server canperform or cause to perform a handover of control of the five mobiledevices from the base station of the first cell to the base station ofthe second cell, thereby decreasing congestion in the first cell.

In one or more embodiments, the network server can use image recognitionto determine a congested cell (i.e. overall video traffic metric above apredetermined threshold) and a less congested cell (i.e. overall videotraffic metric below a predetermined threshold). Further, the networkserver can determine one or more mobile devices connected to thecongested cell can also be connected to the less congested cell.Responsive to this determination, the network server can automaticallyperform or cause to perform a handover of control of the one or moremobile devices from a base station of the congested cell to the basestation of the less congested cell, thereby reducing the congested cell.For example, the number of video sessions in a first cell can be 53sessions and the number of video sessions for a second cell is 42sessions. A predetermined threshold for an overall video traffic metric(i.e. number of video sessions) can be 50 video sessions. A squarerepresenting the first cell can be colored red on the graphical map 105to indicate the level of congestion (i.e. metric) in the first cell isabove a predetermined threshold. Further, a square representing thesecond cell can be colored green on the graphical map 105 to indicatethe level of congestion (i.e. metric) in the second cell is below apredetermined threshold. Further, the network server can determine fivemobile devices from the first cell can be provisioned to be connected tothe second cell. The network server can perform or cause to perform ahandover of control of the five mobile devices from the base station ofthe first cell to the base station of the second cell, therebydecreasing congestion in the first cell.

FIG. 2 depicts a cell cluster 130 of the cellular network from graphicalmap 105. In one or more embodiments, each square 205-265 represents acell in a cellular network. Further, each square 205-265 has a patternto indicate a range values for congestion according to an overall videotraffic metric. Squares 205, 240, 245, 250 with a single diagonal linepattern may indicate a low range of congestion. Further, squares 210-235with a two diagonal line pattern may indicate an intermediate range ofcongestion. In addition, squares 255-265 with a cross hatching patternmay indicate a high range of congestions. For example, squares 205, 240,245, 250 with a single diagonal line pattern may indicate cells with anumber of video sessions between 0-30 video sessions. Further, squares210-235 with a two diagonal line pattern may indicate cells with anumber of video session between 31-70 video sessions. In addition,squares 255-265 with a cross hatching pattern may indicate cells withover 71 video sessions.

FIG. 3 depicts an illustrative embodiment for managing video sessions ina network based on network performance information. In one or moreembodiments, the system 300 can include a network server that cangenerate a cluster of shapes (e.g. hexagons) to represent a cluster ofcells 302 on a graphical map 105. Further, the congestion of each cell315-345, according to an overall video traffic metric, can be indicatedby a pattern as described in discussing FIG. 2. Further, the cluster ofcells 302 can indicate a mobile device 305 traversing a portion of thecells 315-345.

In one or more embodiments, the system 300 can receive networkinformation regarding a mobile device such as a call detail record (CDR)that indicates a travel trajectory 310 of the mobile device 305.Further, the trajectory 310 can be determined by personal information ofthe mobile device user. For example, the network server can determinethat the mobile device user may be traveling home from work because thetime of day is evening rush hour (e.g. 5 pm-7 pm) and in the past themobile device 305 trajectory 310 is along a commuter bus route that theuser has traveled regularly during evening rush hour.

In one or more embodiments, the trajectory 310 of the mobile device 305can be provided with the graphical map, by the network server, to eitherthe mobile device for viewing by the user or to a communication devicefor viewing by a network operator. Further, an indication can be given,by the network server, with the graphical map 105 that the mobile device305 is entering a congested cell 345 but can connect to one of twoneighboring cells 325, 335 that are less congested (e.g. congestion ofcells determined according to the overall video traffic metric).However, due to the trajectory 310 on the graphical map, the user or thenetwork operator can make an informed decision on whether to request ahandover of control of mobile device to cell 335 or 325. Examining thetrajectory 310 indicates that performing a handover of control of mobiledevice 305 from cell 345 to cell 335 can be better choice as thetrajectory 310 brings mobile device 305 closer cell 335 than to cell325. Thus, the user or the network operator can send a request to thenetwork server to perform or cause to perform a handover of control ofmobile device 305 from a base station of cell 345 to a base station ofcell 335.

In one or more embodiments, the network server can analyze the data usedin generating the cell cluster 302 for graphical map 105 and identifyingthe trajectory 310. The network server can automatically (without useror network operator input) perform or cause to perform a handover ofcontrol of the mobile device 305 from a base station of cell 345 to abase station of cell 335 because the network server has determined thatthe distance between cell 335 to the trajectory 310 is shorter than thedistance between cell 325 and the trajectory 310.

FIG. 4 depicts an illustrative embodiment for managing video sessions ina network based on network performance information. In one or moreembodiments, a network server of system 400 can generate a cluster ofshapes (e.g. hexagons, circles, etc.) to represent a cluster of cellsand wireless networks 402 on a graphical map 105 (similar to the clusterof cells 302 in FIG. 3). Further, the congestion (according to anoverall video traffic metric) of each cell 315-345 can be indicated by apattern as described in discussing FIG. 2. Further, the cluster of cellsand wireless networks 402 can indicate a mobile device 305 traversingportion of the cells 315-345. In addition, to the shapes representingeach cell 315-345 (e.g. hexagons), the system 400 can present on thegraphical map 105 shapes (e.g. circles) representing other networks410-440 that can be connected to mobile device 305. For example,networks 410-440 can be wireless networks such as WiFi networks.Further, in some embodiments, each circle representing wireless network410-410 can have a pattern to indicate a range of congestion accordingto a wireless traffic metric the same as or similar to the overall videotraffic metric for the cells 315-340. In other embodiments wirelesstraffic metric can different than the overall video traffic metric forthe cells 315-340. In some embodiments, a pattern for a cell and thesame pattern for a wireless network can indicate the same range ofcongestion according to the overall video traffic metric/wirelesstraffic metric (as may be the case when the overall video traffic metricand wireless traffic metric are the same or similar). In otherembodiments, a pattern for a cell can indicate one range of congestionand the same pattern for a wireless network can indicate a differentrange of congestion (as may be the case when the overall video trafficmetric and wireless traffic metric are different).

In one or more embodiments, congestion of the cluster of cells andwireless networks 402 are indicated according to the same metric (e.g.number of video sessions). Further, a shape (e.g. hexagon or circle)with a single diagonal line pattern indicates a number of video sessionsin a cell or wireless network to be 0-30 video sessions. A shape withtwo diagonal line pattern indicates a number of video sessions in a cellor wireless network to be 31-70 video sessions. A shape with a crosshatching pattern indicates a number of video sessions in a cell orwireless network to be over 70 video sessions.

In one or more embodiments, the graphical map 105 with cluster of cellsand wireless networks 402 can be sent to a network operator'scommunication device or user's mobile device 305. Reviewing thegraphical map, the network operator or user can determine that cells 345and 330 on the trajectory of mobile device 305 are congested with over70 video sessions in each cell. Further, cell 335 has an intermediatelevel of congestion with the number of video sessions between 31-70video sessions. However, wireless networks 420-440 have a relativelylower congestion level than any cell, with a number of video sessionsbetween 0-30 video sessions. Thus, in some embodiments, a networkoperator may send a message, via the communication device, to a networkserver of system 400, indicating to send a request to mobile device 305to connect with the wireless networks 420-440 once each wireless networkis within range of mobile device 305. Further, the mobile device 305 canbe programmed, by user, or the network server, to automatically connectto the wireless networks 420-440 when in range. In other embodiments,the user may send a message, via the mobile device 305, to the networkserver indicating that the mobile device 305 is connecting to thewireless networks 420-440 once mobile device 305 is within range of eachwireless network.

In one or more embodiments, the graphical map 105 presenting cluster ofcells and wireless networks 402 shows that although the wireless network410 may be in range of mobile device 305 as it traverses the trajectory310, the network operator, user, or network server, may not connectmobile device 305 to wireless network 410. The reason may be that mobiledevice 305 can also connect to wireless network 430 at the same time aswireless network 410. Wireless network 430 has less congestion thanwireless network 410. Thus, any video session conducted when the mobiledevice 305 is connected to wireless network 430 would likely provide abetter experience than a video session conducted when mobile device 305is connected to wireless network 410.

FIG. 5 depicts an illustrative embodiment for managing video sessions ina network based on network performance information. In one or moreembodiments, the system 500 can include mobile devices 510-525 in acongested cell 505 (i.e. congested according to an overall video trafficmetric). Further, a network server 540 may be coupled to a base station530 for the cell 505 over communication network 535. In addition, avideo content server 545 can provide video content for a video sessionconducted by each of the mobile devices 510-525. Also, the networkserver 540 can be communicate with video content server 545 over acommunication network 550.

In one or more embodiments, the network server 540 can determine thevideo content provider for each of the video sessions conducted by themobile devices 510-525 using network information provided by differentdata sources. In some embodiments, the video content provider can bediscerned from the application type for each video session provided bythe network information. Further, the network server 540 can determinean overall video traffic metric for the cell 505 and identifies that theoverall video traffic metric indicates that the cell 505 has a highlevel of congestion. In addition, the network server 540 identifies, abased on the network information, that the video content provider isdelivering video content at a high resolution for each of the videosessions conducted by the mobile devices 510-525. In response toidentifying a high resolution video content, the video content provider,and a high level of congestion of the cell 505 (e.g. above apredetermined threshold), the network server 540 sends video contentserver 545 a request to deliver the video content for all or a portionof the video content delivered to the mobile devices 510-525 at a lowerresolution, thereby decreasing the congestion of the cell 505.

Note, the systems 100-400 can include a network server 540 to implementsthe functions of systems 100-400 discussed when describing FIGS. 1-4.FIG. 6 depicts an illustrative embodiment of a method 600 used bysystems 100-500. The method 600 can include, at step 602, a networkserver 540 receiving aggregate network information for communicationsessions for each cell of a multiple of cells in a cellular network. Thecommunication sessions can include a group of video sessions. Also, theaggregate network information comprises network information from each ofa multiple of data sources. In some embodiments, the aggregate networkinformation is generated by linking and correlating data from themultiple data sources.

At a step 604, the method 600 further includes the network server 540calculating an overall video traffic metric for the group of videosessions for each cell based on the aggregate network information.Additionally, the method 600, at step 606, includes generating agraphical map of the cellular network that displays a geography of thecellular network. The graphical map can also indicate the overall videotraffic metric for the group of video sessions for each cell in thecellular network within the geography. At step 608, the method 600 alsoincludes the network server 540 determining a first overall videotraffic metric of a first group of video sessions controlled by a firstbase station of a first cell is above a first predetermined threshold.

At a step 610, the method 600 includes the network server 540identifying a video content provider associated with a portion of thefirst group of video sessions. That is, the network server 540identifies the video content provider delivering video content for eachof the video sessions in the portion of the first group of videosessions based on the aggregate network information. The aggregatenetwork information can include the application type used in conductingeach video session. A video content provider can be identified accordingan application type (e.g. if Youtube™ application type, then videocontent provider is Google™, if Skype™ application type, then videocontent provider is Microsoft™, etc.). At a step 612, the method 600 caninclude the network server 540 transmitting a request to the videocontent provider. The request can indicate the video content provider tolower video resolution of each of the video sessions of the portion ofthe first group of video sessions.

The method 600, at step 616, includes the network server 540 identifyinga first wireless network of multiple wireless networks. The firstwireless network has a first wireless traffic metric below a secondpredetermined threshold. This identification can be in response to thenetwork server 540 receiving aggregate wireless network information foreach of the multiple wireless networks and then calculating a wirelesstraffic metric for each of the multiple wireless networks. In addition,in some embodiments, the network server 540 may re-generate thegraphical map to include displaying a geography of the multiple wirelessnetworks and indicating the wireless traffic metric or range of valuesfor the wireless metric for each of the multiple wireless networks. Inother embodiments, steps 614-616 are implemented prior to step 606 suchthat when generating the graphical map, the graphical map includesdisplaying a geography of the multiple wireless networks and indicatingthe wireless traffic metric or range of values for the wireless metricfor each of the multiple wireless networks. The method 600, at a step618, can include the network server 540 sending a message to each of amultiple of mobile devices. Each mobile device is conducting a videosession in the first cell, and the message indicates a mobile device toconnect to the first wireless network to conduct the video session. Inresponse to receiving the message, a user of a mobile device canprovision the mobile device to connect to the first wireless network.

At a step 614, the method 600 further includes the network server 540determining a second overall video traffic metric of a second group ofvideo sessions controlled by a second base station of a second cell isbelow the first predetermined threshold. Further, at a step 620, themethod 600 includes the network server 540 calculating an excesscapacity of the second cell as a difference between the second overallvideo traffic metric and the first predetermined threshold and thenetwork server 540 and determining an overall video traffic metric ofthe first portion of the first group of video sessions is less than theexcess capacity. Method 600, at step 622, can include the network server540 identifying a trajectory of mobile device conducting a video sessionof the first portion of the first group of video sessions. In addition,the method 600, at step 624, can include the network server 540selecting the second cell according to the trajectory of the mobiledevice.

At step 626, the method 600 includes the network server 540 sending thegraphical map to an operator's communication device and an indicationthat the first overall video traffic metric associated with first cellis above the first predetermined threshold and the second overall videotraffic metric associated with the second cell is below the firstpredetermined threshold. At step 628, the method 600 includes thenetwork server 540 receiving a message from the operator's communicationdevice. The message provides an indication to change (or cause thechange of) control of the first portion of the first group of videosession from the first base station to the second base station.

At step 630, the method 600 includes the network server 540 sending thegraphical map to a user's mobile device and an indication that the firstoverall video traffic metric associated with first cell is above thefirst predetermined threshold and the second overall video trafficmetric associated with the second cell is below the first predeterminedthreshold. At step 632, the method 600 includes the network server 540receiving a message from the user's mobile device. The message providesan indication to change control of the first portion of the first groupof video session from the first base station to the second base station.At a step 634, the method 600 includes the network server 540 performingor causing to perform a handover of control of a first portion of thefirst group of video sessions from the first base station to the secondbase station. Causing to perform a handover can include providinginstructions for a network device (including for the network server 540)to perform the handovers of control as described herein.

While for purposes of simplicity of explanation, the respectiveprocesses are shown and described as a series of blocks in FIG. 6, it isto be understood and appreciated that the claimed subject matter is notlimited by the order of the blocks, as some blocks may occur indifferent orders and/or concurrently with other blocks from what isdepicted and described herein. Moreover, not all illustrated blocks maybe required to implement the methods described herein.

FIG. 7 depicts an illustrative embodiment of a communication system 700for providing various communication services, such as delivering mediaor video content. The communication system 700 can represent aninteractive media network, such as an interactive television system(e.g., an Internet Protocol Television (IPTV) media system).Communication system 700 can be overlaid or operably coupled withsystems 100, 200, 300, 400, 500 of FIGS. 1-5 as another representativeembodiment of communication system 700. For instance, one or moredevices illustrated in the communication system 700 of FIG. 7 can beused for managing video sessions in a network based on networkinformation. Embodiments of communication system 700 can include networkserver 730 receiving aggregate network information for communicationsessions for each cell of a multiple of cells in a cellular network. Thecommunication sessions include a group of video sessions and theaggregate network information comprises network information from each ofa multiple of data sources. Further embodiments can include the networkserver 730 calculating an overall video traffic metric for the group ofvideo sessions for each cell based on the aggregate network information.Additional embodiments can include the network server 730 determining afirst overall video traffic metric of a first group of video sessionscontrolled by a first base station of a first cell is above a firstpredetermined threshold and a second overall video traffic metric of asecond group of video sessions controlled by a second base station of asecond cell is below the first predetermined threshold. Also,embodiments can include network server 730 generating a graphical map ofthe cellular network that displays a geography of the cellular networkand indicates the overall video traffic metric for the group of videosessions for each cell in the cellular network. Further embodimentsinclude the network server 730 sending the graphical map to acommunication device conducting a video session in the first cell and anindication that the first overall video traffic metric associated withfirst cell is above the first predetermined threshold and the secondoverall video traffic metric associated with the second cell is belowthe first predetermined threshold.

In one or more embodiments, the communication system 700 can include asuper head-end office (SHO) 710 with at least one super headend officeserver (SHS) 711 which receives media content from satellite and/orterrestrial communication systems. In the present context, media contentcan represent, for example, audio content, moving image content such as2D or 3D videos, video games, virtual reality content, still imagecontent, and combinations thereof. The SHS server 711 can forwardpackets associated with the media content to one or more video head-endservers (VHS) 714 via a network of video head-end offices (VHO) 712according to a multicast communication protocol. The VHS 714 candistribute multimedia broadcast content via an access network 718 tocommercial and/or residential buildings 702 housing a gateway 704 (suchas a residential or commercial gateway).

The access network 718 can represent a group of digital subscriber lineaccess multiplexers (DSLAMs) located in a central office or a servicearea interface that provide broadband services over fiber optical linksor copper twisted pairs 719 to buildings 702. The gateway 704 can usecommunication technology to distribute broadcast signals to mediaprocessors 706 such as Set-Top Boxes (STBs) which in turn presentbroadcast channels to media devices 708 such as computers or televisionsets managed in some instances by a media controller 707 (such as aninfrared or RF remote controller).

The gateway 704, the media processors 706, and media devices 708 canutilize tethered communication technologies (such as coaxial, powerlineor phone line wiring) or can operate over a wireless access protocolsuch as Wireless Fidelity (WiFi), Bluetooth®, Zigbee®, or other presentor next generation local or personal area wireless network technologies.By way of these interfaces, unicast communications can also be invokedbetween the media processors 706 and subsystems of the IPTV media systemfor services such as video-on-demand (VoD), browsing an electronicprogramming guide (EPG), or other infrastructure services.

A satellite broadcast television system 729 can be used in the mediasystem of FIG. 7. The satellite broadcast television system can beoverlaid, operably coupled with, or replace the IPTV system as anotherrepresentative embodiment of communication system 700. In thisembodiment, signals transmitted by a satellite 715 that include mediacontent can be received by a satellite dish receiver 731 coupled to thebuilding 702. Modulated signals received by the satellite dish receiver731 can be transferred to the media processors 706 for demodulating,decoding, encoding, and/or distributing broadcast channels to the mediadevices 708. The media processors 706 can be equipped with a broadbandport to an Internet Service Provider (ISP) network 732 to enableinteractive services such as VoD and EPG as described above.

In yet another embodiment, an analog or digital cable broadcastdistribution system such as cable TV system 733 can be overlaid,operably coupled with, or replace the IPTV system and/or the satelliteTV system as another representative embodiment of communication system700. In this embodiment, the cable TV system 733 can also provideInternet, telephony, and interactive media services. System 700 enablesvarious types of interactive television and/or services including IPTV,cable and/or satellite.

The subject disclosure can apply to other present or next generationover-the-air and/or landline media content services system.

Some of the network elements of the IPTV media system can be coupled toone or more computing devices 730, a portion of which can operate as aweb server for providing web portal services over the ISP network 732 towireline media devices 708 or wireless communication devices 716.

Communication system 700 can also provide for all or a portion of thecomputing devices 730 to function as a network management server (hereinreferred to as network server 730). The network server 730 can usecomputing and communication technology to perform function 762, whichcan include among other things, the video session management techniquesdescribed by method 600 of FIG. 6. For instance, function 762 of server730 can be similar to the functions described for network server 540 ofFIG. 5 in accordance with method 600. The media processors 706 andwireless communication devices 716 can be provisioned with softwarefunctions 764 and 766, respectively, to utilize the services of networkserver 730. For instance, functions 764 and 766 of media processors 706and wireless communication devices 716 can be similar to the functionsdescribed for the communication devices or mobile devices 305, 510-515or a network operator communication device discussed when describingFIGS. 1-5 in accordance with method 600 of FIG. 6.

Multiple forms of media services can be offered to media devices overlandline technologies such as those described above. Additionally, mediaservices can be offered to media devices by way of a wireless accessbase station 717 operating according to common wireless access protocolssuch as Global System for Mobile or GSM, Code Division Multiple Accessor CDMA, Time Division Multiple Access or TDMA, Universal MobileTelecommunications or UMTS, World interoperability for Microwave orWiMAX, Software Defined Radio or SDR, Long Term Evolution or LTE, and soon. Other present and next generation wide area wireless access networktechnologies can be used in one or more embodiments of the subjectdisclosure.

FIG. 8 depicts an illustrative embodiment of a communication system 800employing an IP Multimedia Subsystem (IMS) network architecture tofacilitate the combined services of circuit-switched and packet-switchedsystems. Communication system 800 can be overlaid or operably coupledwith systems 100, 200, 300, 400, 500 of FIGS. 1-5 and communicationsystem 700 as another representative embodiment of communication system700.

Embodiments of a communication system 800 can include network server 730receiving aggregate network information for communication sessions foreach cell of a plurality of cells in a cellular network, wherein thecommunication sessions include a group of video sessions, and whereinthe aggregate network information comprises network information fromeach of a plurality of data sources. Further embodiments can includenetwork server 730 calculating an overall video traffic metric for thegroup of video sessions for each cell based on the aggregate networkinformation. Additional embodiments can include network server 730generating a graphical map of the cellular network that displays ageography of the cellular network and indicates the overall videotraffic metric for the group of video sessions for each cell in thecellular network within the geography. Also, embodiments can includenetwork server 730 determining a first overall video traffic metric of afirst group of video sessions controlled by a first base station of afirst cell is above a first predetermined threshold and a second overallvideo traffic metric of a second group of video sessions controlled by asecond base station of a second cell is below the first predeterminedthreshold. Further embodiments can include network server 730 sendingthe graphical map to a communication device and an indication that thefirst overall video traffic metric associated with first cell is abovethe first predetermined threshold and the second overall video trafficmetric associated with the second cell is below the first predeterminedthreshold. Additional embodiments can include network server 730performing or causing to perform a handover of control of a firstportion of the first group of video sessions from the first base stationto the second base station responsive to receiving a message from thecommunication device, wherein the message provides an indication tochange control of the first portion of the first group of video sessionfrom the first base station to the second base station.

Communication system 800 can comprise a Home Subscriber Server (HSS)840, a tElephone NUmber Mapping (ENUM) server 830, and other networkelements of an IMS network 850. The IMS network 850 can establishcommunications between IMS-compliant communication devices (CDs) 801,802, Public Switched Telephone Network (PSTN) CDs 803, 805, andcombinations thereof by way of a Media Gateway Control Function (MGCF)820 coupled to a PSTN network 860. The MGCF 820 need not be used when acommunication session involves IMS CD to IMS CD communications. Acommunication session involving at least one PSTN CD may utilize theMGCF 820.

IMS CDs 801, 802 can register with the IMS network 850 by contacting aProxy Call Session Control Function (P-CSCF) which communicates with aninterrogating CSCF (I-CSCF), which in turn, communicates with a ServingCSCF (S-CSCF) to register the CDs with the HSS 840. To initiate acommunication session between CDs, an originating IMS CD 801 can submita Session Initiation Protocol (SIP INVITE) message to an originatingP-CSCF 804 which communicates with a corresponding originating S-CSCF806. The originating S-CSCF 806 can submit the SIP INVITE message to oneor more application servers (ASs) 817 that can provide a variety ofservices to IMS subscribers.

For example, the application servers 817 can be used to performoriginating call feature treatment functions on the calling party numberreceived by the originating S-CSCF 806 in the SIP INVITE message.Originating treatment functions can include determining whether thecalling party number has international calling services, call IDblocking, calling name blocking, 7-digit dialing, and/or is requestingspecial telephony features (e.g., *72 forward calls, *73 cancel callforwarding, *67 for caller ID blocking, and so on). Based on initialfilter criteria (iFCs) in a subscriber profile associated with a CD, oneor more application servers may be invoked to provide various calloriginating feature services.

Additionally, the originating S-CSCF 806 can submit queries to the ENUMsystem 830 to translate an E.164 telephone number in the SIP INVITEmessage to a SIP Uniform Resource Identifier (URI) if the terminatingcommunication device is IMS-compliant. The SIP URI can be used by anInterrogating CSCF (I-CSCF) 807 to submit a query to the HSS 840 toidentify a terminating S-CSCF 814 associated with a terminating IMS CDsuch as reference 802. Once identified, the I-CSCF 807 can submit theSIP INVITE message to the terminating S-CSCF 814. The terminating S-CSCF814 can then identify a terminating P-CSCF 816 associated with theterminating CD 802. The P-CSCF 816 may then signal the CD 802 toestablish Voice over Internet Protocol (VoIP) communication services,thereby enabling the calling and called parties to engage in voiceand/or data communications. Based on the iFCs in the subscriber profile,one or more application servers may be invoked to provide various callterminating feature services, such as call forwarding, do not disturb,music tones, simultaneous ringing, sequential ringing, etc.

In some instances the aforementioned communication process issymmetrical. Accordingly, the terms “originating” and “terminating” inFIG. 8 may be interchangeable. It is further noted that communicationsystem 800 can be adapted to support video conferencing. In addition,communication system 800 can be adapted to provide the IMS CDs 801, 802with the multimedia and Internet services of communication system 700 ofFIG. 7.

If the terminating communication device is instead a PSTN CD such as CD803 or CD 805 (in instances where the cellular phone only supportscircuit-switched voice communications), the ENUM system 830 can respondwith an unsuccessful address resolution which can cause the originatingS-CSCF 806 to forward the call to the MGCF 820 via a Breakout GatewayControl Function (BGCF) 819. The MGCF 820 can then initiate the call tothe terminating PSTN CD over the PSTN network 860 to enable the callingand called parties to engage in voice and/or data communications.

It is further appreciated that the CDs of FIG. 8 can operate as wirelineor wireless devices. For example, the CDs of FIG. 8 can becommunicatively coupled to a cellular base station 821, a femtocell, aWiFi router, a Digital Enhanced Cordless Telecommunications (DECT) baseunit, or another suitable wireless access unit to establishcommunications with the IMS network 850 of FIG. 8. The cellular accessbase station 821 can operate according to common wireless accessprotocols such as GSM, CDMA, TDMA, UMTS, WiMax, SDR, LTE, and so on.Other present and next generation wireless network technologies can beused by one or more embodiments of the subject disclosure. Accordingly,multiple wireline and wireless communication technologies can be used bythe CDs of FIG. 8.

Cellular phones supporting LTE can support packet-switched voice andpacket-switched data communications and thus may operate asIMS-compliant mobile devices. In this embodiment, the cellular basestation 821 may communicate directly with the IMS network 850 as shownby the arrow connecting the cellular base station 821 and the P-CSCF816.

Alternative forms of a CSCF can operate in a device, system, component,or other form of centralized or distributed hardware and/or software.Indeed, a respective CSCF may be embodied as a respective CSCF systemhaving one or more computers or servers, either centralized ordistributed, where each computer or server may be configured to performor provide, in whole or in part, any method, step, or functionalitydescribed herein in accordance with a respective CSCF. Likewise, otherfunctions, servers and computers described herein, including but notlimited to, the HSS, the ENUM server, the BGCF, and the MGCF, can beembodied in a respective system having one or more computers or servers,either centralized or distributed, where each computer or server may beconfigured to perform or provide, in whole or in part, any method, step,or functionality described herein in accordance with a respectivefunction, server, or computer.

The network server 730 of FIG. 7 can be operably coupled tocommunication system 800 for purposes similar to those described above.Network server 730 can perform function 762 and thereby provide videosession management services to the CDs 801, 802, 803 and 805 of FIG. 8similar to the functions described for systems 100, 200, 300, 400 ofFIGS. 1-4 and network server 540 of FIG. 5 in accordance with method 600of FIG. 6. CDs 801, 802, 803 and 805, which can be adapted with softwareto perform function 874 to utilize the services of the network server730 similar to the functions described for communication devices 305,510-525 and network operator communication device of FIGS. 1-5 inaccordance with method 600 of FIG. 6. Network server 730 can be anintegral part of the application server(s) 817 performing function 874,which can be substantially similar to function 762 and adapted to theoperations of the IMS network 850.

For illustration purposes only, the terms S-CSCF, P-CSCF, I-CSCF, and soon, can be server devices, but may be referred to in the subjectdisclosure without the word “server.” It is also understood that anyform of a CSCF server can operate in a device, system, component, orother form of centralized or distributed hardware and software. It isfurther noted that these terms and other terms such as DIAMETER commandsare terms can include features, methodologies, and/or fields that may bedescribed in whole or in part by standards bodies such as 3^(rd)Generation Partnership Project (3GPP). It is further noted that some orall embodiments of the subject disclosure may in whole or in partmodify, supplement, or otherwise supersede final or proposed standardspublished and promulgated by 3GPP.

FIG. 9 depicts an illustrative embodiment of a web portal 902 of acommunication system 900. Communication system 900 can be overlaid oroperably coupled with systems 100, 200, 300, 400, 500 of FIGS. 1-5,communication system 700, and/or communication system 800 as anotherrepresentative embodiment of systems 100, 200, 300, 400, 500 of FIGS.1-5, communication system 700, and/or communication system 800. The webportal 902 can be used for managing services of systems 100, 200, 300,400, 500 of FIGS. 1-5 and communication systems 700-800. A web page ofthe web portal 902 can be accessed by a Uniform Resource Locator (URL)with an Internet browser using an Internet-capable communication devicesuch as those described in FIGS. 1-5 and FIGS. 7-8. The web portal 902can be configured, for example, to access a media processor 706 andservices managed thereby such as a Digital Video Recorder (DVR), a Videoon Demand (VoD) catalog, an Electronic Programming Guide (EPG), or apersonal catalog (such as personal videos, pictures, audio recordings,etc.) stored at the media processor 706. The web portal 902 can also beused for provisioning IMS services described earlier, provisioningInternet services, provisioning cellular phone services, and so on.

The web portal 902 can further be utilized to manage and provisionsoftware applications 762-766, and 872-874 to adapt these applicationsas may be desired by subscribers and/or service providers of systems100, 200, 300, 400, 500 of FIGS. 1-5, and communication systems 700-800.For instance, a user of the video session management services providedby network server 540 or network server 730 can log into their on-lineaccounts and provision the network server 540 or network server 730 toconfigure to connect their mobile device from a congested cell in acellular network to a less congested cell in the cellular network.Further, a user can configure to connect their mobile device to one ormore wireless (e.g. WiFi) networks on a certain trajectory (e.g.commuter train route during evening rush hour) such that the mobiledevice automatically connects to these networks when their mobile deviceis in range of these networks. In addition, the user can send a requestto a video content provider that is providing video content for thevideo session they are conducting on their mobile device to lower theresolution of the video content to relieve congestion of the cell towhich their mobile device is connected.

Also, a network operator, through their communication device, canprovision the predetermined thresholds, or range of values to indicatecongestion of cells and wireless networks on the graphical map 105 usingportal 902. Further, a network operator from their communication devicecan connect a mobile device from a congested cell in a cellular networkto a less congested cell in the cellular network. Further, the networkoperator from their communication device can configure to connect amobile device to one or more wireless (e.g. WiFi) networks on a certaintrajectory (e.g. commuter train route during evening rush hour) suchthat the mobile device (in some embodiments automatically) connects tothese networks when the mobile device is in range of these networks. Inaddition, the network operator through their communication device cansend a request to a video content provider that is providing videocontent for the video session conducted on a mobile device to lower theresolution of the video content to relieve congestion of the cell towhich their mobile device is connected.

FIG. 10 depicts an illustrative embodiment of a communication device1000. Communication device 1000 can serve in whole or in part as anillustrative embodiment of the devices depicted described in conjunctionwith FIGS. 1-5, and FIGS. 7-8 and can be configured to perform portionsof method 600 of FIG. 6.

Communication device 1000 can comprise a wireline and/or wirelesstransceiver 1002 (herein transceiver 1002), a user interface (UI) 1004,a power supply 1014, a location receiver 1016, a motion sensor 1018, anorientation sensor 1020, and a controller 1006 for managing operationsthereof. The transceiver 1002 can support short-range or long-rangewireless access technologies such as Bluetooth®, ZigBee®, WiFi, DECT, orcellular communication technologies, just to mention a few (Bluetooth®and ZigBee® are trademarks registered by the Bluetooth® Special InterestGroup and the ZigBee® Alliance, respectively). Cellular technologies caninclude, for example, CDMA-1×, UMTS/HSDPA, GSM/GPRS, TDMA/EDGE, EV/DO,WiMAX, SDR, LTE, as well as other next generation wireless communicationtechnologies as they arise. The transceiver 1002 can also be adapted tosupport circuit-switched wireline access technologies (such as PSTN),packet-switched wireline access technologies (such as TCP/IP, VoIP,etc.), and combinations thereof.

The UI 1004 can include a depressible or touch-sensitive keypad 1008with a navigation mechanism such as a roller ball, a joystick, a mouse,or a navigation disk for manipulating operations of the communicationdevice 1000. The keypad 1008 can be an integral part of a housingassembly of the communication device 1000 or an independent deviceoperably coupled thereto by a tethered wireline interface (such as a USBcable) or a wireless interface supporting for example Bluetooth®. Thekeypad 1008 can represent a numeric keypad commonly used by phones,and/or a QWERTY keypad with alphanumeric keys. The UI 1004 can furtherinclude a display 1010 such as monochrome or color LCD (Liquid CrystalDisplay), OLED (Organic Light Emitting Diode) or other suitable displaytechnology for conveying images to an end user of the communicationdevice 1000. In an embodiment where the display 1010 is touch-sensitive,a portion or all of the keypad 1008 can be presented by way of thedisplay 1010 with navigation features.

The display 1010 can use touch screen technology to also serve as a userinterface for detecting user input. As a touch screen display, thecommunication device 1000 can be adapted to present a user interfacewith graphical user interface (GUI) elements that can be selected by auser with a touch of a finger. The touch screen display 1010 can beequipped with capacitive, resistive or other forms of sensing technologyto detect how much surface area of a user's finger has been placed on aportion of the touch screen display. This sensing information can beused to control the manipulation of the GUI elements or other functionsof the user interface. The display 1010 can be an integral part of thehousing assembly of the communication device 1000 or an independentdevice communicatively coupled thereto by a tethered wireline interface(such as a cable) or a wireless interface.

The UI 1004 can also include an audio system 1012 that utilizes audiotechnology for conveying low volume audio (such as audio heard inproximity of a human ear) and high volume audio (such as speakerphonefor hands free operation). The audio system 1012 can further include amicrophone for receiving audible signals of an end user. The audiosystem 1012 can also be used for voice recognition applications. The UI1004 can further include an image sensor 1013 such as a charged coupleddevice (CCD) camera for capturing still or moving images.

The power supply 1014 can utilize common power management technologiessuch as replaceable and rechargeable batteries, supply regulationtechnologies, and/or charging system technologies for supplying energyto the components of the communication device 1000 to facilitatelong-range or short-range portable applications. Alternatively, or incombination, the charging system can utilize external power sources suchas DC power supplied over a physical interface such as a USB port orother suitable tethering technologies.

The location receiver 1016 can utilize location technology such as aglobal positioning system (GPS) receiver capable of assisted GPS foridentifying a location of the communication device 1000 based on signalsgenerated by a constellation of GPS satellites, which can be used forfacilitating location services such as navigation. The motion sensor1018 can utilize motion sensing technology such as an accelerometer, agyroscope, or other suitable motion sensing technology to detect motionof the communication device 1000 in three-dimensional space. Theorientation sensor 1020 can utilize orientation sensing technology suchas a magnetometer to detect the orientation of the communication device1000 (north, south, west, and east, as well as combined orientations indegrees, minutes, or other suitable orientation metrics).

The communication device 1000 can use the transceiver 1002 to alsodetermine a proximity to a cellular, WiFi, Bluetooth®, or other wirelessaccess points by sensing techniques such as utilizing a received signalstrength indicator (RSSI) and/or signal time of arrival (TOA) or time offlight (TOF) measurements. The controller 1006 can utilize computingtechnologies such as a microprocessor, a digital signal processor (DSP),programmable gate arrays, application specific integrated circuits,and/or a video processor with associated storage memory such as Flash,ROM, RAM, SRAM, DRAM or other storage technologies for executingcomputer instructions, controlling, and processing data supplied by theaforementioned components of the communication device 1000.

Other components not shown in FIG. 10 can be used in one or moreembodiments of the subject disclosure. For instance, the communicationdevice 1000 can include a reset button (not shown). The reset button canbe used to reset the controller 1006 of the communication device 1000.In yet another embodiment, the communication device 1000 can alsoinclude a factory default setting button positioned, for example, belowa small hole in a housing assembly of the communication device 1000 toforce the communication device 1000 to re-establish factory settings. Inthis embodiment, a user can use a protruding object such as a pen orpaper clip tip to reach into the hole and depress the default settingbutton. The communication device 1000 can also include a slot for addingor removing an identity module such as a Subscriber Identity Module(SIM) card. SIM cards can be used for identifying subscriber services,executing programs, storing subscriber data, and so forth.

The communication device 1000 as described herein can operate with moreor less of the circuit components shown in FIG. 10. These variantembodiments can be used in one or more embodiments of the subjectdisclosure.

The communication device 1000 can be adapted to perform the functions ofmobile devices 305, 510-525, the servers described in conjunction withsystems 100, 200, 300, 400, 500, communication device of a networkoperator, network server 540, the media processor 706, the media devices708, or the portable communication devices 716 of FIG. 7, as well as theIMS CDs 801-802 and PSTN CDs 803-805 of FIG. 8. It will be appreciatedthat the communication device 1000 can also represent other devices thatcan operate in systems 100, 200, 300, 400, 500, of FIGS. 1-5,communication systems 700-800 of FIGS. 7-8 such as a gaming console anda media player. In addition, the controller 1006 can be adapted invarious embodiments to perform the functions 762-766 and 872-874,respectively.

Upon reviewing the aforementioned embodiments, it would be evident to anartisan with ordinary skill in the art that said embodiments can bemodified, reduced, or enhanced without departing from the scope of theclaims described below. For example, portions or entire embodiments canbe combined with other portions of other embodiments or combined withother entire embodiments. Other embodiments can be used in the subjectdisclosure.

It should be understood that devices described in the exemplaryembodiments can be in communication with each other via various wirelessand/or wired methodologies. The methodologies can be links that aredescribed as coupled, connected and so forth, which can includeunidirectional and/or bidirectional communication over wireless pathsand/or wired paths that utilize one or more of various protocols ormethodologies, where the coupling and/or connection can be direct (e.g.,no intervening processing device) and/or indirect (e.g., an intermediaryprocessing device such as a router).

FIG. 11 depicts an exemplary diagrammatic representation of a machine inthe form of a computer system 1100 within which a set of instructions,when executed, may cause the machine to perform any one or more of themethods described above. One or more instances of the machine canoperate, for example, as the network server 730, the media processor706, mobile devices 305, 510-525, the servers described in conjunctionwith systems 100, 200, 300, 400, 500, communication device of a networkoperator, network server 540, and other devices described in conjunctionwith FIGS. 1-10. In some embodiments, the machine may be connected(e.g., using a network 1126) to other machines. In a networkeddeployment, the machine may operate in the capacity of a server or aclient user machine in a server-client user network environment, or as apeer machine in a peer-to-peer (or distributed) network environment.

The machine may comprise a server computer, a client user computer, apersonal computer (PC), a tablet, a smart phone, a laptop computer, adesktop computer, a control system, a network router, switch or bridge,or any machine capable of executing a set of instructions (sequential orotherwise) that specify actions to be taken by that machine. It will beunderstood that a communication device of the subject disclosureincludes broadly any electronic device that provides voice, video ordata communication. Further, while a single machine is illustrated, theterm “machine” shall also be taken to include any collection of machinesthat individually or jointly execute a set (or multiple sets) ofinstructions to perform any one or more of the methods discussed herein.

The computer system 1100 may include a processor (or controller) 1102(e.g., a central processing unit (CPU)), a graphics processing unit(GPU, or both), a main memory 1104 and a static memory 1106, whichcommunicate with each other via a bus 1108. The computer system 1100 mayfurther include a display unit 1110 (e.g., a liquid crystal display(LCD), a flat panel, or a solid state display). The computer system 1100may include an input device 1112 (e.g., a keyboard), a cursor controldevice 1114 (e.g., a mouse), a disk drive unit 1116, a signal generationdevice 1118 (e.g., a speaker or remote control) and a network interfacedevice 1120. In distributed environments, the embodiments described inthe subject disclosure can be adapted to utilize multiple display units1110 controlled by two or more computer systems 1100. In thisconfiguration, presentations described by the subject disclosure may inpart be shown in a first of the display units 1110, while the remainingportion is presented in a second of the display units 1110.

The disk drive unit 1116 may include a tangible computer-readablestorage medium 1122 on which is stored one or more sets of instructions(e.g., software 1124) embodying any one or more of the methods orfunctions described herein, including those methods illustrated above.The instructions 1124 may also reside, completely or at least partially,within the main memory 1104, the static memory 1106, and/or within theprocessor 1102 during execution thereof by the computer system 1100. Themain memory 1104 and the processor 1102 also may constitute tangiblecomputer-readable storage media.

Dedicated hardware implementations including, but not limited to,application specific integrated circuits, programmable logic arrays andother hardware devices can likewise be constructed to implement themethods described herein. Application specific integrated circuits andprogrammable logic array can use downloadable instructions for executingstate machines and/or circuit configurations to implement embodiments ofthe subject disclosure. Applications that may include the apparatus andsystems of various embodiments broadly include a variety of electronicand computer systems. Some embodiments implement functions in two ormore specific interconnected hardware modules or devices with relatedcontrol and data signals communicated between and through the modules,or as portions of an application-specific integrated circuit. Thus, theexample system is applicable to software, firmware, and hardwareimplementations.

In accordance with various embodiments of the subject disclosure, theoperations or methods described herein are intended for operation assoftware programs or instructions running on or executed by a computerprocessor or other computing device, and which may include other formsof instructions manifested as a state machine implemented with logiccomponents in an application specific integrated circuit or fieldprogrammable gate array. Furthermore, software implementations (e.g.,software programs, instructions, etc.) including, but not limited to,distributed processing or component/object distributed processing,parallel processing, or virtual machine processing can also beconstructed to implement the methods described herein. Distributedprocessing environments can include multiple processors in a singlemachine, single processors in multiple machines, and/or multipleprocessors in multiple machines. It is further noted that a computingdevice such as a processor, a controller, a state machine or othersuitable device for executing instructions to perform operations ormethods may perform such operations directly or indirectly by way of oneor more intermediate devices directed by the computing device.

While the tangible computer-readable storage medium 822 is shown in anexample embodiment to be a single medium, the term “tangiblecomputer-readable storage medium” should be taken to include a singlemedium or multiple media (e.g., a centralized or distributed database,and/or associated caches and servers) that store the one or more sets ofinstructions. The term “tangible computer-readable storage medium” shallalso be taken to include any non-transitory medium that is capable ofstoring or encoding a set of instructions for execution by the machineand that cause the machine to perform any one or more of the methods ofthe subject disclosure. The term “non-transitory” as in a non-transitorycomputer-readable storage includes without limitation memories, drives,devices and anything tangible but not a signal per se.

The term “tangible computer-readable storage medium” shall accordinglybe taken to include, but not be limited to: solid-state memories such asa memory card or other package that houses one or more read-only(non-volatile) memories, random access memories, or other re-writable(volatile) memories, a magneto-optical or optical medium such as a diskor tape, or other tangible media which can be used to store information.Accordingly, the disclosure is considered to include any one or more ofa tangible computer-readable storage medium, as listed herein andincluding art-recognized equivalents and successor media, in which thesoftware implementations herein are stored.

Although the present specification describes components and functionsimplemented in the embodiments with reference to particular standardsand protocols, the disclosure is not limited to such standards andprotocols. Each of the standards for Internet and other packet switchednetwork transmission (e.g., TCP/IP, UDP/IP, HTML, HTTP) representexamples of the state of the art. Such standards are from time-to-timesuperseded by faster or more efficient equivalents having essentiallythe same functions. Wireless standards for device detection (e.g.,RFID), short-range communications (e.g., Bluetooth®, WiFi, Zigbee®), andlong-range communications (e.g., WiMAX, GSM, CDMA, LTE) can be used bycomputer system 800. In one or more embodiments, information regardinguse of services can be generated including services being accessed,media consumption history, user preferences, and so forth. Thisinformation can be obtained by various methods including user input,detecting types of communications (e.g., video content vs. audiocontent), analysis of content streams, and so forth. The generating,obtaining and/or monitoring of this information can be responsive to anauthorization provided by the user. In one or more embodiments, ananalysis of data can be subject to authorization from user(s) associatedwith the data, such as an opt-in, an opt-out, acknowledgementrequirements, notifications, selective authorization based on types ofdata, and so forth.

The illustrations of embodiments described herein are intended toprovide a general understanding of the structure of various embodiments,and they are not intended to serve as a complete description of all theelements and features of apparatus and systems that might make use ofthe structures described herein. Many other embodiments will be apparentto those of skill in the art upon reviewing the above description. Theexemplary embodiments can include combinations of features and/or stepsfrom multiple embodiments. Other embodiments may be utilized and derivedtherefrom, such that structural and logical substitutions and changesmay be made without departing from the scope of this disclosure. Figuresare also merely representational and may not be drawn to scale. Certainproportions thereof may be exaggerated, while others may be minimized.Accordingly, the specification and drawings are to be regarded in anillustrative rather than a restrictive sense.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any arrangement which achieves thesame or similar purpose may be substituted for the embodiments describedor shown by the subject disclosure. The subject disclosure is intendedto cover any and all adaptations or variations of various embodiments.Combinations of the above embodiments, and other embodiments notspecifically described herein, can be used in the subject disclosure.For instance, one or more features from one or more embodiments can becombined with one or more features of one or more other embodiments. Inone or more embodiments, features that are positively recited can alsobe negatively recited and excluded from the embodiment with or withoutreplacement by another structural and/or functional feature. The stepsor functions described with respect to the embodiments of the subjectdisclosure can be performed in any order. The steps or functionsdescribed with respect to the embodiments of the subject disclosure canbe performed alone or in combination with other steps or functions ofthe subject disclosure, as well as from other embodiments or from othersteps that have not been described in the subject disclosure. Further,more than or less than all of the features described with respect to anembodiment can also be utilized.

Less than all of the steps or functions described with respect to theexemplary processes or methods can also be performed in one or more ofthe exemplary embodiments. Further, the use of numerical terms todescribe a device, component, step or function, such as first, second,third, and so forth, is not intended to describe an order or functionunless expressly stated so. The use of the terms first, second, thirdand so forth, is generally to distinguish between devices, components,steps or functions unless expressly stated otherwise. Additionally, oneor more devices or components described with respect to the exemplaryembodiments can facilitate one or more functions, where the facilitating(e.g., facilitating access or facilitating establishing a connection)can include less than every step needed to perform the function or caninclude all of the steps needed to perform the function.

In one or more embodiments, a processor (which can include a controlleror circuit) has been described that performs various functions. Itshould be understood that the processor can be multiple processors,which can include distributed processors or parallel processors in asingle machine or multiple machines. The processor can be used insupporting a virtual processing environment. The virtual processingenvironment may support one or more virtual machines representingcomputers, servers, or other computing devices. In such virtualmachines, components such as microprocessors and storage devices may bevirtualized or logically represented. The processor can include a statemachine, application specific integrated circuit, and/or programmablegate array including a Field PGA. In one or more embodiments, when aprocessor executes instructions to perform “operations”, this caninclude the processor performing the operations directly and/orfacilitating, directing, or cooperating with another device or componentto perform the operations.

The Abstract of the Disclosure is provided with the understanding thatit will not be used to interpret or limit the scope or meaning of theclaims. In addition, in the foregoing Detailed Description, it can beseen that various features are grouped together in a single embodimentfor the purpose of streamlining the disclosure. This method ofdisclosure is not to be interpreted as reflecting an intention that theclaimed embodiments require more features than are expressly recited ineach claim. Rather, as the following claims reflect, inventive subjectmatter lies in less than all features of a single disclosed embodiment.Thus the following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separately claimedsubject matter.

What is claimed is:
 1. A device, comprising: a processing systemincluding a processor; and a memory that stores executable instructionsthat, when executed by the processing system, facilitate performance ofoperations, the operations comprising: receiving network information forcommunication sessions for a plurality of cells in a cellular network;generating a graphical map of the cellular network that displays ageography of the cellular network and graphical indications of aplurality of video traffic congestion metrics of video traffic sessionsof the plurality of cells and of one or more wireless networks withinthe geography; determining, for a first cell of the plurality of cells,according to the graphical indications of the plurality of video trafficcongestions metrics, that a first video traffic congestion metric of theplurality of video traffic congestion metrics is above a firstpredetermined threshold and, for a second cell of the plurality ofcells, that a second video traffic congestion metric of the plurality ofvideo traffic congestion metrics is below the first predeterminedthreshold; determining a trajectory of a mobile device to obtain adetermined trajectory, wherein the determining of the trajectorycomprises accessing historical travel information associated with themobile device based on time of day and determining the trajectoryaccording to the historical travel information; overlaying thedetermined trajectory and the graphical map to obtain a modifiedgraphical map; identifying another wireless network proximal to thedetermined trajectory of the mobile device from the one or more wirelessnetworks within the geography of the modified graphical map, wherein thegraphical map displays a graphical indication of a congestion metric ofthe another wireless network is below the first predetermined threshold;sending the graphical map to the mobile device for presentation at auser display of the mobile device; receiving from the mobile device aselection between the another wireless network and the second cell tocarry video traffic of the mobile device according to the determinedtrajectory of the mobile device of the modified graphical map;calculating an excess capacity of the second cell as a differencebetween the second video traffic congestion metric and the firstpredetermined threshold; identifying a service provider based on anapplication type provided by the plurality of video traffic congestionmetrics; and requesting the service provider to adjust a video serviceresponsive to the plurality of video traffic congestion metrics.
 2. Thedevice of claim 1, wherein the operations further comprise: calculatingan excess capacity of the second cell as a difference between the secondvideo traffic congestion metric and the first predetermined threshold.3. The device of claim 1, wherein the operations further comprise:receiving aggregate wireless network information for each of a pluralityof wireless networks comprising the another wireless network;calculating a wireless traffic congestion metric for each of theplurality of wireless networks, wherein the generating of the graphicalmap further comprises: displaying a geography of the plurality ofwireless networks; and providing graphical indications of the wirelesstraffic congestion metric for each of the plurality of wirelessnetworks.
 4. The device of claim 3, wherein the operations furthercomprise: identifying the another wireless network of the plurality ofwireless networks, wherein the another wireless network has a firstwireless traffic congestion metric below a second predeterminedthreshold, and wherein the plurality of video traffic congestion metricsare selected from a group consisting of a number of video sessions, adata throughput, a transfer duration, a video quality, an applicationtype, an operating system type, a buffering value, a startup delay, aquality switching, a network type, and any combination thereof.
 5. Thedevice of claim 4, wherein the first predetermined threshold comprises athreshold number of video sessions, wherein the video traffic congestionmetric comprises a current number of video sessions, wherein theoperations further comprise sending a message to each of a plurality ofmobile devices, wherein each of the plurality of mobile devices isconducting a video session in the first cell, and wherein the messageindicates the mobile device to connect to a first wireless network toconduct the video session.
 6. The device of claim 1, wherein theoperations further comprise sending a message to each of a plurality ofmobile devices, wherein each mobile device of the plurality of mobiledevices is conducting a video session in the first cell, and wherein themessage indicates each mobile device to send a request to a videocontent provider associated with the video session to lower resolutionof the video session.
 7. The device of claim 1, wherein each of the oneor more wireless networks use a WiFi protocol.
 8. The device of claim 1,wherein the operations further comprise sending, to a communicationdevice, the graphical map and a first indication that the first videotraffic congestion metric associated with the first cell is above thefirst predetermined threshold and the second video traffic congestionmetric associated with the second cell is below the first predeterminedthreshold.
 9. A non-transitory machine-readable storage medium,comprising executable instructions that, when executed by a processingsystem including a processor, facilitate performance of operations, theoperations comprising: obtaining network information for communicationsessions for a plurality of cells in a cellular network; determining fora first cell of the plurality of cells that a first video trafficcongestion metric of a plurality of video traffic congestion metrics ofthe plurality of cells and one or more wireless networks is above afirst predetermined threshold and for a second cell of the plurality ofcells a second video traffic congestion metric of the plurality of videotraffic congestion metrics is below the first predetermined threshold;identifying a trajectory of a mobile device to obtain an identifiedtrajectory, wherein the identifying the trajectory comprises accessinghistorical travel information associated with the mobile device based ontime of day and determining the identified trajectory according to thehistorical travel information; identifying the one or more wirelessnetworks on the identified trajectory of the mobile device; generating agraphical map of the cellular network that displays a geography of thecellular network, the one or more wireless networks proximal to theidentified trajectory of the mobile device, the plurality of videotraffic congestion metrics of the plurality of cells and the one or morewireless networks; overlaying the identified trajectory and thegraphical map to obtain a modified graphical map; sending, to the mobiledevice, the modified graphical map for presentation at a user display ofthe mobile device; receiving from the mobile device, a selection betweenthe one or more wireless networks and the second cell to carry videotraffic of the mobile device responsive to the presentation of themodified graphical map at the user display of the mobile device;calculating an excess capacity of the second cell as a differencebetween the second video traffic congestion metric and the firstpredetermined threshold; identifying a service provider based on anapplication type provided by the plurality of video traffic congestionmetrics; and requesting the service provider to adjust a video serviceresponsive to the plurality of video traffic congestion metrics.
 10. Thenon-transitory machine-readable storage medium of claim 9, wherein theoperations further comprise performing a handover of control of themobile device from the first cell to the second cell responsive toreceiving a message from the mobile device, wherein the message providesa second indication to change control of the mobile device from thefirst cell to the second cell.
 11. The non-transitory machine-readablestorage medium of claim 9, wherein the operations further comprisereceiving a third indication that the mobile device is connected to afirst wireless network to conduct a video session.
 12. Thenon-transitory machine-readable storage medium of claim 9, wherein theoperations further comprise sending a message to the mobile device andwherein the message indicates the mobile device to send a request to avideo content provider to lower resolution of a video session.
 13. Thenon-transitory machine-readable storage medium of claim 9, wherein theoperations further comprise: identifying a video content providerassociated with a video session; and transmitting a request to the videocontent provider, wherein the request indicates the video contentprovider to lower video resolution of the video session.
 14. A method,comprising: receiving, by a processing system including a processor,network information for communication sessions for a plurality of cellsin a cellular network; determining, by the processing system, that afirst video traffic congestion metric of a first cell is above a firstpredetermined threshold and a second video traffic congestion metric ofa second cell is below the first predetermined threshold; identifying,by the processing system, a trajectory of a mobile device to obtain anidentified trajectory, wherein the identifying of the trajectorycomprises accessing, by the processing system, historical travelinformation associated with the mobile device based on time of day anddetermining, by the processing system, the identified trajectoryaccording to the historical travel information; identifying, by theprocessing system, one or more wireless networks proximal to theidentified trajectory of the mobile device; generating, by theprocessing system, a graphical map of the cellular network that displaysa geography of the cellular network the one or more wireless networks onthe identified trajectory of the mobile device, and a plurality of videotraffic congestion metrics of the plurality of cells and the one or morewireless networks, wherein the plurality of video traffic congestionmetrics comprises the first and second video traffic congestion metrics;overlaying, by the processing system, the identified trajectory and thegraphical map to obtain a modified graphical map; sending, by theprocessing system to the mobile device for presentation at a userdisplay of the mobile device, the modified graphical map graphicallyportraying a first indication that the first video traffic congestionmetric associated with the first cell is above the first predeterminedthreshold and a second indication that the second video trafficcongestion metric associated with the second cell is below the firstpredetermined threshold; receiving, by the processing system, aselection from the mobile device between the one or more wirelessnetworks and the second cell responsive to the presentation of themodified graphical map at the user display of the mobile device;calculating, by the processing system, an excess capacity of the secondcell as a difference between the second video traffic congestion metricand the first predetermined threshold; identifying, by the processingsystem, a service provider based on an application type provided by theplurality of video traffic congestion metrics; and requesting, by theprocessing system, the service provider to adjust a video serviceresponsive to the plurality of video traffic congestion metrics.
 15. Themethod of claim 14, further comprising performing, by the processingsystem, a handover of control of the mobile device from the first cellto the second cell responsive to receiving a message from the mobiledevice, wherein the message provides a second indication to changecontrol of the mobile device from the first cell to the second cell. 16.The method of claim 15, further comprising: calculating, by theprocessing system, an excess capacity of the second cell as a differencebetween the second video traffic congestion metric and the firstpredetermined threshold.
 17. The method of claim 14, further comprisingreceiving, by the processing system, a message from the mobile device,wherein the message indicates that the mobile device has sent a requestto a video content provider associated with a video session to lowerresolution of the video session.
 18. The method of claim 14, whereineach of the one or more wireless networks use a WiFi protocol.
 19. Themethod of claim 14, wherein the graphical map indicates a video trafficlevel of each of the one or more wireless networks.
 20. Thenon-transitory machine-readable storage medium of claim 9, wherein awireless network of the one or more wireless networks use a WiFiprotocol.